package cn.yilongquan.user.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.data.annotation.Id;
import org.springframework.data.mongodb.core.mapping.Document;
import org.springframework.data.mongodb.core.mapping.Field;
import org.springframework.data.mongodb.core.mapping.FieldType;

import java.util.Date;

@Data
@Document(collection = "article")//实体类对应mongodb的表/文档article
public class BlogArticle {
    @Id //对应mongodb的表的_id，添加时不设置_id会自动增长
    private String _id;

    // 主键ID，需与数据库主键类型匹配，若数据库是自增，可结合 MyBatis - Plus 注解
    private Long id;
    // 文章图片
    private String articlePic;
    // 文章名称
    private String articleName;
    // 文章标签
    private String articleTag;
    // 文章类型
    private Long articleType;
    // 文章状态
    private Integer articleState;
    // 置顶状态
    private Integer topState;
    // 发布者ID
    private Long publishId;
    // 创建时间（使用Java 8+的LocalDateTime，包含年月日时分秒）
    @JsonFormat(pattern = "yyyy - MM - dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;
    // 更新时间（使用Java 8+的LocalDateTime，包含年月日时分秒）
    @JsonFormat(pattern = "yyyy - MM - dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;
    // 文章阅读数
    private Integer articleReadCount;
    // 文章点赞数
    private Integer articleStarNum;
    // 文章评论数
    private Integer articleCommentNum;
    // 文章备注
    private String articleRemark;

    // 新增：与 Param 对应，存储图片 URL
    private String imgUrl;
}